// MVP 模块
~(function(window) {
	// MVP 构造函数
	var MVP = function() {};

	// 模型层
	MVP.model = function() {
		var M = {};
		M.data = {};
		M.conf = {};
		return {
			getData: function(m) {
				return M.data(m);
			},
			setData: function(m, v) {
				M.data[m] = v;
				return v;
			},
			getConf: function(c) {
				return M.conf[c];
			},
			setConf: function(c, v) {
				M.conf[c] = v;
				return v;
			}
		}
	}();

	// 视图层
	MVP.view = function() {
		// 模板解析器
		return function(str) {
			// 返回期望视图模板
			return html;
		}
	}();

	// 管理器
	MVP.presenter = function() {
		var V = MVP.view;
		var M = MVP.model;
		var C = {};
		return {
			init: function() {
				for (var i in c) {
					// 执行所有管理器内部逻辑
					C[i] && C[i](M, V, i);
				}
			}
		}
	}();

	// MVP入口
	MVP.init = function() {
		this.presenter.init();
	}

	// 暴露 MVP 对象，这样既可在外部访问 MVP
	window.MVP = MVP;
})(window);
